package com.geeguo.ebuilder.operation.base.redis.utils;

import com.geeguo.ebuilder.core.redis.utils.AbstractCacheKeyFactory;
import org.springframework.stereotype.Component;

@Component
public class CacheKeyFactory extends AbstractCacheKeyFactory {

    public static final CacheKeyFactory INSTANCE = new CacheKeyFactory();

    protected String getApplicationName() {
        return "OPERATION";
    }

    // 密码重试次数
    public String getPasswordRetryCount(String userId) {
        return genK("PASSWORD_RETRY_COUNT", userId);
    }

    // 用户web端模块列表
    public String getUserWebModuleList(String userId) {
        return genK("USER_WEB_MODULE_LIST", userId);
    }
    
    // 用户
    public String getUser(String id) {
        return genK("USER", id);
    }

    // Web端菜单
    public String getWebModule(String id) {
        return genK("WEB_MODULE", id);
    }

    // 组织机构
    public String getOrganization(String id) {
        return genK("ORGANIZATION", id);
    }

    // 数据源
    public String getTenantInfo(String id) {
        return genK("TENANT_INFO", id);
    }

    // 数据源
    public String getDataSourceInfo(String id) {
        return genK("DATA_SOURCE_INFO", id);
    }

    // 客户Web端菜单
    public String getClientWebModule(String id) {
        return genK("CLIENT_WEB_MODULE", id);
    }
}